﻿using System;
using vudu.EnlaceDatos.SqlServer;
using vudu.Logica.Clases;
using vudu.Logica.Excepciones;

namespace vudu.PaginasWeb.G10Salon
{
    /// <summary>
    /// Clase que se encarga de todas las operaciones sobre la ventana de Agregar Salon
    /// </summary>
    public partial class AgregarSalon : System.Web.UI.Page
    {
        #region Atributos

        private Universidad _universidad;

        #endregion

        /// <summary>
        /// Metodo que se ejecuta cuando se ingresa a la pagina
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Page_Load(object sender, EventArgs e)
        {
            MensajeError.Visible = false;
            MensajeFinal.Visible = false;
            if ((Session["rol"] != null) && (((string)Session["rol"]).Equals("Universidad")))
            {
                _universidad = (Universidad)Session["Usuario"];
                InformacionUsuario.Text = (string) Session["rol"] + ": " + _universidad.Nombre;
            }
            else if ((Session["rol"] == null) || (((string)Session["rol"]).Equals("Universidad")))
            {
                Response.Redirect("../G3AccesoSistema/InicioSistema.aspx");
               // _universidad = new Universidad();
               // _universidad.IdUniv = 1;
            }
        }


        /// <summary>
        /// Metodo que se encarga cuando el usuario da click al boton
        /// de aceptar
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void Button2Click(object sender, EventArgs e)
        {
            try
            {
                Page.Validate("a");

                if (Page.IsValid)
                {
                    SqlServerSalon baseDatos = new SqlServerSalon();
                    Salon salon = new Salon();
                    salon.Edificio = Edificio.Text;
                    salon.Capacidad = int.Parse(Capacidad.Text);
                    salon.Tipo = Tipo.SelectedValue;
                    salon.Nombre = Nombre.Text;
                    salon.Universidad = _universidad;
                    baseDatos.InsertarSalon(salon);
                    Edificio.Text = "";
                    Capacidad.Text = "";
                    Tipo.SelectedIndex = 0;
                    Nombre.Text = "";
                    MensajeFinal.Visible = true;
                
                }
            
            }
            catch (ConexionExeption)
            {
                MensajeError.Visible = true;
            }
            catch(TransaccionFallidaExeption)
            {
                MensajeError.Visible = true;
            }
        }
    }
}